package STUDENT.NGUYENDUCPHU.OOPs_EXCERCISES.Array.EX4;

public class Models {
	public int FindMaxElement(int[] dArray) {
		int dMax = dArray[0];
        for (int i = 1; i < dArray.length; i++) {
            // So sánh giá trị
            if (dMax < dArray[i]) {
            	dMax = dArray[i];
            }
        }
        return dMax;
    }

    /**
     * Tìm kiếm giá trị nhỏ nhất trong mảng
     * @param myList
     * @return
     */
    public int FindMinElement(int[] dArray) {
    	int dMin = dArray[0];
        for (int i = 1; i < dArray.length; i++) {
            // So sánh giá trị
            if (dMin > dArray[i]) {
            	dMin = dArray[i];
            }
        }
        return dMin;
    }


	// 1 khai báo khởi tạo biến mảng trung gian
	public int[] IndexMaxElement(int[] dArray, int dValue) {
		int[] dIndexValue;
		int[] dTemp = new int[dArray.length];
		// Duyệt và tìm tập vị trí chứa giá trị lớn nhất
		int iCount = 0;
		for (int i = 0; i < dArray.length; i++) {
			if (dValue == dArray[i]) {
				dTemp[iCount] = i;
				iCount++;
			}
		}
		// --> Sao chép toàn bộ giá trị trong mảng iTemp --> mảng iIndexMax
		dIndexValue = new int[iCount];
		System.arraycopy(dTemp, 0, dIndexValue, 0, iCount);
		return dIndexValue;
	}
}



